package com.rou.im.framework.core.context;

import com.rou.im.framework.core.Request;
import com.rou.im.framework.core.RequestVO;
import com.rou.im.framework.core.Response;
import com.rou.im.framework.core.exception.CommonRuntimeException;
import com.rou.im.framework.core.processorstack.TargetAction;

import java.util.Map;

/**
 * <p>
 * 会话域,消息上下文
 * </p>
 *
 * @author GaoShuangWen
 * @since 2020-04-05 21:37
 */
public interface RequestContext {

    Request getRequest();

    Response getResponse();

    Integer getCmdId();

    void setResponse(Response response);

    void setRequest(Request request);

    CommonRuntimeException getException();

    void setException(CommonRuntimeException exception);

    RequestVO getRequestVO();

    void setRequestVO(RequestVO requestVO);

     TargetAction getAction() ;

     void setAction(TargetAction action);
}
